/*!
   \copyright  Copyright (c) 2023 Qualcomm Technologies International, Ltd.
               All Rights Reserved.
               Qualcomm Technologies International, Ltd. Confidential and Proprietary.
   \file
   \addtogroup leabm
   @{
   \brief      The le broadcast profile audio params
*/
#ifndef INCLUDE_LE_AUDIO_BROADCAST_MUSIC_PARAM_H_
#define  INCLUDE_LE_AUDIO_BROADCAST_MUSIC_PARAM_H_

#include <audio_sources_list.h>
#include <source_param_types.h>

bool LeBroadcastMusicSource_GetAudioConnectParameters(audio_source_t source, source_defined_params_t * source_params);
void LeBroadcastMusicSource_FreeAudioConnectParameters(audio_source_t source, source_defined_params_t * source_params);
bool LeBroadcastMusicSource_GetAudioDisconnectParameters(audio_source_t source, source_defined_params_t * source_params);
void LeBroadcastMusicSource_FreeAudioDisconnectParameters(audio_source_t source, source_defined_params_t * source_params);

/*! \brief Update the audio locations which user want to render. These audio locations must be
           updated in pacs record as well.

           The Assumption here is that sink device is synched to all the BIS's and based on the
           location to render parameters are updated. The audio graph is teared down to update
           the audio location to kymera. Based on the audio location kymera will decide which
           handle to use and what config to pick.

           Note: Once PACs records are updated, then the same shall be audio location is expected for Unicast streaming as well.
                 So, once PACs is updated it shall impact both Auracast and Unicast streaming alike.


    \param[in] audio_locations The user intentended locations.
*/
bool LeBroadcastManager_UpdateSinkAudioLocationToRender(uint32 audio_loc);

#endif /*  INCLUDE_LE_AUDIO_BROADCAST_MUSIC_PARAM_H_ */
